﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DeviceEntity.Fct.MxPcb.Type
{
    class Fct3BLL : BLL.IMxPcbBLL
    {
        /// <summary>
        /// 操作类
        /// </summary>
        private static Fct3BLL commonBLL = null;
        /// <summary>
        /// 配置参数
        /// </summary>
        private static DeviceEntity.Model.DeviceConfigModel _deviceConfig = null;
        /// <summary>
        /// 初始化
        /// </summary>
        /// <param name="deviceConfig">配置参数</param>
        /// <returns></returns>
        public static BLL.IMxPcbBLL Init(DeviceEntity.Model.DeviceConfigModel deviceConfig)
        {
            if (commonBLL == null)
            {
                commonBLL = new Fct3BLL();
            }
            _deviceConfig = deviceConfig;
            return commonBLL;
        }
        /// <summary>
        /// 继电器控制
        /// </summary>
        /// <param name="fct3Parameter">控制参数</param>
        /// <returns></returns>
        public async Task RelayControl(Model.MxPcbParaModel fct3Parameter)
        { }
        /// <summary>
        /// AD采集/隔离电压采集/差分电压采集
        /// </summary>
        /// <param name="fct3Parameter">采集参数</param>
        /// <returns></returns>
        public async Task ADCollect(Model.MxPcbParaModel fct3Parameter)
        { }
        /// <summary>
        /// 电气控制
        /// </summary>
        /// <param name="fct3Parameter">控制参数</param>
        /// <returns></returns>
        public async Task ElectricalControl(Model.MxPcbParaModel fct3Parameter)
        { }
        /// <summary>
        /// 隔离光耦频率采集/频率采集
        /// </summary>
        /// <param name="fct3Parameter">采集参数</param>
        /// <returns></returns>
        public async Task FrequencyCollect(Model.MxPcbParaModel fct3Parameter)
        { }
        /// <summary>
        /// 电平采集
        /// </summary>
        /// <param name="fct3Parameter">采集参数</param>
        /// <returns></returns>
        public async Task VolLevelCollect(Model.MxPcbParaModel fct3Parameter)
        { }
        /// <summary>
        /// 电平输出
        /// </summary>
        /// <param name="fct3Parameter">输出参数</param>
        /// <returns></returns>
        public async Task VolLevelOutput(Model.MxPcbParaModel fct3Parameter)
        { }
        /// <summary>
        /// 通断检测
        /// </summary>
        /// <param name="fct3Parameter">检测参数</param>
        /// <returns></returns>
        public async Task OnOffCheck(Model.MxPcbParaModel fct3Parameter)
        { }
        /// <summary>
        /// LED灯检测
        /// </summary>
        /// <param name="fct3Parameter">检测参数</param>
        /// <returns></returns>
        public async Task LedCheck(Model.MxPcbParaModel fct3Parameter)
        { }
    }
}
